
package com.friendfeed.api;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class Entry  implements java.io.Serializable 
{
    private String id;
    private String url;
    private Date date;
    private boolean anonymous;
    private boolean hidden;
    private List<Comment> comments;
    private List<Like> likes;
    private List<File> files;
    private List<String> commands;
    private Via via;
    private Geo geo;
    private String body;
    private From from;
    private List<To> to;
    private String rawBody;
    private String rawLink;
    private FriendOfFriend fof; 

    public From getFrom()
	{
		return from;
	}


	public void setFrom(From f)
	{
		this.from = f;
	}


	public Entry() {
        comments = new ArrayList<Comment>();
        likes = new ArrayList<Like>();
        files = new ArrayList<File>();
    }


    public String getId() {
        return id;
    }


    public String getUrl() {
        return url;
    }


    public void setAnonymous(boolean anonymous) {
    	this.anonymous = anonymous;
    }
    
    public boolean isAnonymous() {
    	return anonymous;
    }
    
    public boolean isHidden() {
        return hidden;
    }

    public List<Comment> getComments() {
    	if (comments == null) {
    		comments = new ArrayList<Comment>();
    	}
        return comments;
    }

    public List<Like> getLikes() {
    	if (likes == null) {
    		likes = new ArrayList<Like>();
    	}
        return likes;
    }

    public List<File> getFiles() {
    	if (files == null) {
    		files = new ArrayList<File>();
    	}
        return files;
    }

    public Via getVia() {
        return via;
    }


    public void setId(String id) {
        this.id = id;
    }


    public void setUrl(String u) {
        this.url = u;
    }

    public void setHidden(boolean hidden) {
        this.hidden = hidden;
    }

    public void setComments(List<Comment> comments) {
        this.comments = comments;
    }

    public void setLikes(List<Like> likes) {
        this.likes = likes;
    }

    public void setFiles(List<File> files) {
        this.files = files;
    }

    public void setVia(Via via) {
        this.via = via;
    }

    
    public Geo getGeo() {
		return geo;
	}

	public void setGeo(Geo geo) {
		this.geo = geo;
	}

	
	
	public String getBody()
	{
		return body;
	}


	public void setBody(String body)
	{
		this.body = body;
	}

	

	public Date getDate()
	{
		return date;
	}


	public void setDate(Date d)
	{
		this.date = d;
	}

	public List<String> getCommands()
	{
		if (commands == null)
		{
			commands = new ArrayList<String>();
		}
		
		return commands;
	}


	public void setCommands(List<String> commands)
	{
		this.commands = commands;
	}

	public List<To> getTo()
	{
		return to;
	}

	public void setTo(List<To> to)
	{
		this.to = to;
	}

	

	public String getRawBody()
	{
		return rawBody;
	}


	public void setRawBody(String rawBody)
	{
		this.rawBody = rawBody;
	}


	public String getRawLink()
	{
		return rawLink;
	}


	public void setRawLink(String rawLink)
	{
		this.rawLink = rawLink;
	}


	public FriendOfFriend getFof()
	{
		return fof;
	}


	public void setFof(FriendOfFriend fof)
	{
		this.fof = fof;
	}


	public String toString() {
        return "Entry{" +
                "id='" + id + '\'' +
                ", hidden=" + hidden +
                '}';
    }

}
